class ValueFunction
{
public:
    double getValue(const vector<double> &featureVector) const;
    double getValue(const Frame &frame) const;
    void saveToFile(const string &filename) const;
    void loadFromFile(const string &filename);

private:
    VI_TRANSFORM_TYPE _transform;
    vector<double> _weights;

friend class ValueIterationLearner;
};